#ifndef SERIALCOMMAND_H
#define SERIALCOMMAND_H
#include <QCoreApplication>  // 包含Qt核心模块的头文件，如果是基于Qt Widgets的应用程序，可能是#include <QApplication>
#include <QString>  // 包含QString类的头文件
#include <QDateTime>
#include <QDebug>
#include <QLabel>
//切换状态指令
extern QString DORM_COMMAND;
extern QString IDLE_COMMAND;
extern QString ACQU_COMMAND ;
extern QString STATE_COMMAND;
extern QString command_tail ;
//参数查询指令
extern QString INFO_COMMAND;

extern QString LaunSaveOnCmd;
extern QString LaunSaveOffCmd;
extern QString AcquSaveOnCmd;
extern QString AcquSaveOffCmd;
extern QString AckOnCmd;
extern QString AckOffCmd;
extern QString SaveParmCmd;

//选择的发射方式
#define LAUN_MOD_32FSK      1
#define LAUN_MOD_8M16FSK    2
#define LAUN_MOD_OFDM       3

enum eSerialFrameType
{
    StateFrame,//$AZCT,
    DataFrame,//$AZCX,
    InfoFrame,//$ACZP,I
    ErrorFrame
};
enum eCurrentStatus
{
    curStatusIDLE,
    curStatusACQU,
    curStatusDORM,
    curStatusLaunching,
    curStatusERROR
};
bool getBatVTimestampFromMessage(const QString& inputString,QString& voltage, QString& current, QString& formattedDateTime,QString& SdCardGB);
int checkSerialFrameType(const QString& SerialFrame);
void parseDataFrame(const QString& dataFrame,QString &dataLength,QString&showStr);
#endif // SERIALCOMMAND_H
